//Accepted
#include <vector>
#include <set>
#include <algorithm>
#include <string>
#include <cmath>
#include <queue>
#include <map>
#include <iostream>
#include <list>
#include <deque>
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std;


int main (){
	//freopen("in.txt", "r", stdin);//freopen("out.txt", "w", stdout);
	char s[10], a[8][8],i, j, k, x, y, ok, sum=0, d[8][2]={{1,-2},{-1,-2},{1,2},{-1,2},{2,-1},{2,1},{-2,-1},{-2,1}};
	
	memset(a, 1, sizeof(a));
	
	scanf("%s",s);
	i=s[0]-'a';
	j=s[1]-'1';
	for(k=0;k<8;++k){
		a[i][k]=0;
		a[k][j]=0;
	}
	a[i][j]=2;
	
	scanf("%s",s);
	i=s[0]-'a';
	j=s[1]-'1';
	for(k=0;k<8;++k){
		x=i+d[k][0];
		y=j+d[k][1];
		if((-1<i&&i<8)&&(-1<j&&j<8))a[i][j]=0;
	}
	a[i][j]=2;
	
	sum=0;
	for(i=0;i<8;++i){
		for(j=0;j<8;++j){
			if(a[i][j]==1){
				ok=1;
				for(k=0;k<8&&ok;++k){
					x=i+d[k][0];
					y=j+d[k][1];
					if((-1<x&&x<8)&&(-1<y&&y<8))ok = (a[x][y]!=2);
				}
				sum+=ok;
			}
		}
	}
	
	printf("%d",sum);
	return 0;
}
